1. Technical Field
This invention relates in general to electronic communications and, more particularly, to virtual local area networks.
2. Description of the Related Art
One of the most important application of metropolitan area networks (MANs) is their use in virtual local area networks (VLANs), where a provider network transparently connects multiple local area networks (LANs), typically spanning over multiple customer locations. By connecting to a provider MAN, the customer can create a wide-area network (WAN) without purchasing or maintaining expensive equipment.
Many VLANs are implemented using a spanning tree protocol, such as an IEEE 802.1D protocol. A spanning tree protocol is used to resolve the problem of traffic loops. In a layer 2 (L2) or similar protocol, there is a single path between any two endpoints. Frames are passed from source to destination through a series of transparent bridges, each of which learns how to forward incoming frames of data by “snooping” the frames and associating media access control (MAC) addresses (destination address) with specific ports in an internal file. The internal file is described herein as the MAC address table, although other structures, such as a forwarding database structure, can be used as well.
If an incoming frame has a known MAC address (a MAC address that can be found in the bridge's MAC address table), the bridge will forward the frame at the port specified by the table. If an incoming frame has an unknown MAC address (one that is not found in the bridge's table), then the bridge broadcasts the frame to all of its active (unblocked) ports. The bridge then associates the MAC address with the successful port for future reference. The process of determining the relationships between end host address and the bridge's ports is referred to as learning.
An important aspect of the simplicity of the VLAN is that the customer can implement the VLAN as if the provider network simply provides one or more links between bridges. Accordingly, the spanning tree software of the VLAN only accounts for bridges on the customer's premises. The spanning tree software is responsible for eliminating redundant paths between any two end nodes, while maintaining complete connectivity. To eliminate loops (redundant paths), various ports of the bridges in a VLAN are blocked by the spanning tree software.
When changes are made to the topology of the customer's VLAN, topology change notifications (TCNs) are sent to other bridges in the customer VLAN, since the topology changes may necessitate flushing of the MAC address tables (“unlearning”), due to changes in the paths by the spanning tree software.
Topology changes in the Customer VLAN can also require changes in the MAC address tables in the bridges of the provider network. A previous proposal allows snooping on all TCNs generated within the customer domain, and taking action indiscriminately. Each time a TCN is generated, the provider domain unlearns (flushes the MAC table of each bridge) and re-learns all the addresses. Re-learning the MAC address at each bridge is a costly and time-consuming operation.
Therefore, a need has arisen for an efficient method of taking action inside the provider domain responsive to TCNs received from the customer domain.